#ifndef SETTINGS_HH_INCLUDED
#define SETTINGS_HH_INCLUDED

#include <Header.hh>
#include <DrawableGameComponent.hh>
#include <GameScreen.hh>
#include <GameTime.hh>
#include <Background.hh>

class Settings : public DrawableGameComponent, public GameScreen
{
    public:
        Settings(Window &);
        virtual         ~Settings();
        virtual int     Run(void);
        virtual void    Update(Time);
        virtual void    Draw(Time);
        void            GoNext(void);
        void            GoPrev(void);
        int             Enter(void);
        virtual void    Parameters(Params);

    private:
        std::list<sf::String*>              _Items;
        std::list<sf::String*>::iterator    _Current;
        sf::Font                            *_Font;
        Window                              &_Window;
        std::map<std::string, int>          _ItemSelect;
        bool                                _IsWaitingKey;
        std::map<int, std::string>          _KeySelected;
        bool                                _sound;
        std::map<std::string, int>          _KeySets;
        RessourceManager                    *_Content;
        Background                          *_Background;
        Params                              _param;
};

#endif // SETTINGS_HH_INCLUDED
